Methods and systems for tuning at least one write strategy parameter of an optical storage device

ABSTRACT

A method for tuning a write strategy parameter of an optical storage device, includes: writing a segment of data according to a plurality of write strategies; reading the data back and detecting a plurality of lengths, each length corresponding to a pit or a land on an optical storage medium accessed by the optical storage device; performing calculations according to the lengths and a plurality of data types to generate a plurality of calculation results, each of the data types corresponding to at least a specific target pit length or at least a specific target land length; and utilizing the calculation results to determine a proper write strategy.

CROSS REFERENCE TO RELATED APPLICATIONS

This application is a continuation-in-part application of U.S. application Ser. No. 11/306,115, which was filed on Dec. 16, 2005 and entitled “METHODS AND SYSTEMS FOR TUNING WRITE STRATEGY PARAMETERS OF AN OPTICAL STORAGE DEVICE” and is included herein by reference, and claims the benefit of U.S. application Ser. No. 11/306,115 and U.S. application Ser. No. 10/906,397, now issued as U.S. Pat. No. 7,006,420 and included herein by reference.

BACKGROUND

The present invention relates to write strategy tuning of an optical storage device, and more particularly, to methods and a systems for tuning at least one write strategy parameter of an optical storage device.

As multimedia applications progress prosperously, the demand for storing massive digital data increases rapidly. As a result, high storage volume and compact size optical storage media such as CD-R discs and DVD±R discs become more and more popular, and an optical storage device such as a CD drive or a DVD drive becomes a standard accessory of a personal computer utilized for performing the multimedia applications mentioned above.

Take the CD drive as an example. When the CD drive is controlled to write data to a CD-R disc, the writing power of a Laser Diode in the CD drive is usually set to be a specific value and writing pulses corresponding to the data are utilized for recording pits and lands onto the grooves of a CD-R disc. The specific value for the writing power can be derived from an optimal power calibration (OPC) process. On the other hand, through a write strategy tuning process, which is also referred to as a recording strategy tuning process, changing write strategy parameters for controlling widths of the writing pulses may increase the accuracy of lengths of the pits and the lands formed on the CD-R disc. Please refer to related documents of the CD-R specifications (e.g. the Orange Book Part I) for more information.

According to the related art, a specific device such as an oscilloscope can be utilized during the write strategy tuning process. Usually, an engineer or a researcher should determine, by experience, a new set of write strategy parameters for controlling the widths of the writing pulses according to an eye pattern of a plurality of reproduced waveforms shown on the oscilloscope after a trial writing process in advance. It takes lots of time of the engineer or the researcher to utilize this method since repeatedly performing the same process, including at least writing test data, watching an eye pattern of reproduced waveforms shown on the oscilloscope and determining a new set of write strategy parameters by experience according to the eye pattern, is required for each different kind of applicable media and for each different recording speed. The write strategy tuning process mentioned above is time consuming since watching eye patterns to determine write strategy parameters is not automatic. In addition, the write strategy tuning process mentioned above is implicit since determining a new set of write strategy parameters by experience according to the eye pattern is not quantitative. Under certain situations, an unclear eye pattern would invalidate or interfere the write strategy tuning process.

A specific instrument such as a time interval analyzer (TIA) or a jitter meter might be helpful for the same purpose of deriving information for determining a new set of write strategy parameters. However, similar routine work is also required, and if the TIA or the jitter meter is simply coupled for measuring without setting up an additional control system, the same problem that the write strategy tuning process is not automatic still exists. In addition, the information derived from the specific instrument is usually implicit and therefore takes up lots of an experienced engineer or researcher's time.

SUMMARY

Methods and systems for tuning at least one write strategy parameter of an optical storage device are provided. Some embodiments of a method for tuning a write strategy parameter of an optical storage device comprise: writing a segment of data according to a plurality of write strategies; reading the data back and detecting a plurality of lengths, each length corresponding to a pit or a land on an optical storage medium accessed by the optical storage device; performing calculations according to the lengths and a plurality of data types to generate a plurality of calculation results, each of the data types corresponding to at least a specific target pit length or at least a specific target land length; and utilizing the calculation results to determine a proper write strategy.

Some embodiments of a system for tuning a write strategy parameter of an optical storage device comprise: a detector for detecting a plurality of lengths, each length corresponding to a pit or a land on an optical storage medium accessed by the optical storage device; and a controller, coupled to the detector, for controlling the optical storage device to write a segment of data according to a plurality of write strategies, performing calculations according to the lengths and a plurality of data types to generate a plurality of calculation results, and utilizing the calculation results to determine a proper write strategy, wherein each of the data types corresponds to at least a specific target pit length or at least a specific target land length.

Some embodiments of a system for tuning a plurality of write strategy parameters of an optical storage device comprise: a run-length limited (RLL) meter for detecting a plurality of lengths, each length corresponding to a pit or a land on an optical storage medium accessed by the optical storage device; and a controller, coupled to the RLL meter, for controlling the optical storage device to write at least one segment of data according to a plurality of write strategies, performing calculations according to the lengths to generate a plurality of calculation results, and utilizing the calculation results to determine a proper write strategy.

These and other objectives of the present invention will no doubt become obvious to those of ordinary skill in the art after reading the following detailed description of the preferred embodiment that is illustrated in the various figures and drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a diagram of a combination of a system controller and an eight-to-fourteen modulation (EFM) length measurement device according to an embodiment of the present invention.

FIG. 2 is a flowchart of a method for tuning write strategy parameters of an optical storage device according to an embodiment of the present invention.

FIG. 3 is a length compensation illustration of the method shown in FIG. 2.

FIG. 4 is a diagram of a combination of a system controller and an average EFM length measurement device according to an embodiment of the present invention.

FIG. 5 is a diagram of a combination of a system controller and an average EFM length deviation measurement device according to an embodiment of the present invention.

FIG. 6 is a diagram of a system for tuning write strategy parameters of an optical storage device according to an embodiment of the present invention.

FIG. 7 is a diagram of a system for tuning write strategy parameters of an optical storage device according to an embodiment of the present invention.

FIG. 8 is a diagram of a system for tuning write strategy parameters of an optical storage device according to an embodiment of the present invention.

FIG. 9 illustrates a sequence of sampled values generated by an analog-to-digital converter (ADC) and variables utilized in an analytic method according to an embodiment of the present invention.

FIG. 10 illustrates a sequence of sampled values generated by an ADC and variables utilized in a searching method according to an embodiment of the present invention.

FIG. 11 is a diagram of a limit equalizer (LMEQ) according to an embodiment of the present invention.

FIG. 12 illustrates some write strategy parameters of write pulses, where the write pulses complies with a castle write strategy according to an embodiment of the present invention.

FIG. 13 is a diagram of a system for tuning write strategy parameters of an optical storage device according to an embodiment of the present invention.

FIG. 14 illustrates a direct current (DC) level of a reproduced signal.

FIG. 15 illustrates write strategy parameters that can be respectively tuned by utilizing the calculation results according to different embodiments of the present invention.

FIG. 16 illustrates write strategy parameters that can be respectively tuned by utilizing the calculation results according to different embodiments of the present invention.

FIG. 17 illustrates a flowchart of a method for tuning a write strategy parameter of an optical storage device according to one embodiment of the present invention.

FIG. 18 illustrates a plurality of data segments respectively corresponding to the plurality of write strategies utilized in the method shown in FIG. 17 according to a variation of the embodiment shown in FIG. 17.

FIG. 19 illustrates the signal quality corresponding to at least a portion of each write strategy utilized in the method shown in FIG. 17 according to the variation shown in FIG. 18.

FIG. 20 illustrates a system for implementing the method shown in FIG. 17 according to one embodiment of the present invention.

FIG. 21 is a variation of the embodiment shown in FIG. 20.

DETAILED DESCRIPTION

Certain terms are used throughout the following description and claims, which refer to particular components. As one skilled in the art will appreciate, electronic equipment manufacturers may refer to a component by different names. This document does not intend to distinguish between components that differ in name but not in function. In the following description and in the claims, the terms “include” and “comprise” are used in an open-ended fashion, and thus should be interpreted to mean “include, but not limited to . . . ”. Also, the term “couple” is intended to mean either an indirect or direct electrical connection. Accordingly, if one device is coupled to another device, that connection may be through a direct electrical connection, or through an indirect electrical connection via other devices and connections.

The present invention provides methods and systems for tuning a plurality of write strategy parameters of an optical storage device. According to an aspect, the system is a circuit for tuning the write strategy parameters, where the circuit is positioned in the optical storage device. According to another aspect, the system is substantially the optical storage device itself. According to another aspect, the system comprises a combination of a computer and an optical storage device. Various aspects are explained herein according to different embodiments of the present invention.

Please refer to FIG. 1. FIG. 1 illustrates a diagram of a system controller 1000 coupled to an eight-to-fourteen modulation (EFM) length measurement device 100 according to a first embodiment of the present invention. The EFM length measurement device 100 is usually coupled to a slicer (not shown) of an optical storage device such as a CD drive. The slicer is capable of generating a sliced signal such as EFMI shown in FIG. 1 according to a reproduced signal such as a so-called RF signal representing data written on an optical storage medium. Operation and principles of the slicer is well known in the art and will not be described repeatedly here. Please note that for simplicity, this embodiment is described utilizing the CD-R disc as the optical storage medium and utilizing the CD drive as the optical storage device. Those skilled in the art should understand that other kinds of optical storage media such as a DVD±R disc and corresponding optical storage devices such as a DVD drive are applicable according to other embodiments of the present invention.

As shown in FIG. 1, the EFM length measurement device 100 includes an EFM length detector 110 and a memory 120. The EFM length detector 110 is capable of detecting lengths according to the sliced signal EFMI carrying the data recorded on the optical storage medium. The EFM length detector 110 typically detects intervals between rising edges and falling edges of the sliced signal as the lengths. Each interval corresponds to a pit or a land on the optical storage medium. As a result, the lengths mentioned above include pit lengths and land lengths. According to this embodiment, the sliced signal EFMI has EFM information. Each of the pit lengths mentioned above represents a pit recorded along a groove on the optical storage medium, and each of the land lengths mentioned above represents a land along the groove. Please note that the sliced signal of another embodiment of the present invention may have EFM plus (EFM+) information (e.g. for an embodiment of DVD-R) or other information complying with a variation of the EFM/EFM+ specification.

In the first embodiment, the pit lengths and the land lengths derived from the sliced signal EFMI have lengths ranging from 3T to 11T in an ideal case of the CD-R disc, wherein T represents a period of an EFM data clock. That is, a length P of a pit or a length L of a land can be 3T, 4T, . . . , or 11T. So it is reasonable that the reference clock CLK, which is a reference signal for measuring the lengths of the pits and the lands, has a period less than or equal to the period T of the EFM data clock. According to this embodiment, the period of the reference clock CLK is T/10. In a real case of the CD-R disc, the lengths L and P are usually not exact multiples of T. The memory 120 stores the lengths L and P detected by the EFM length detector 110 and outputs the lengths L and P as requested by the system controller 1000. Then a computer, which can be coupled to the optical storage device and executes an application program, or a micro-processing unit (MPU) executing a firmware code in the optical storage device may perform calculations according to the lengths L and P outputted from the memory 120 to generate calculation results for tuning a plurality of write strategy parameters of the optical storage device.

It is noted that no matter the computer or the MPU is utilized for performing the calculations, the write strategy parameters can be tuned automatically according to the lengths since the specific device (e.g. the oscilloscope mentioned above) is no longer required according to the present invention. In addition, if the computer is not utilized for performing the calculations, the write strategy parameters can be tuned automatically on system or on chip according to the present invention.

In the case that the computer executing the application program performs the calculations mentioned above to generate the calculation results for tuning the write strategy parameters, it is obvious that the computer executing the application program may send the calculation results back to the optical storage device, so the computer executing the application program or the MPU executing the firmware code may tune the write strategy parameters according to the calculation results. On the other hand, in the case that the MPU executing the firmware code performs the calculations mentioned above to generate the calculation results for tuning the write strategy parameters, the MPU may simply tune the write strategy parameters according to the calculation results generated by the MPU. Through tuning the write strategy parameters according to the calculation results derived from the lengths L and P, pit lengths or land lengths corresponding to data newly written on the optical storage medium utilizing the latest values of the write strategy parameters may approach multiples of T. Please note, as long as the implementation of the present invention is not hindered, the system controller 1000 can be the MPU executing the firmware code according to a variation of the first embodiment.

FIG. 2 illustrates a flowchart of a method 910 for tuning write strategy parameters of an optical storage device according to an embodiment of the present invention. Applying the method 910 utilizing the system shown in FIG. 1, the first embodiment can be described as follows according to the case that the MPU performs the calculations mentioned above.

In Step 912, under the control of the MPU (not shown) of the optical storage device, the optical storage device writes data on the optical storage medium utilizing initial values of the write strategy parameters corresponding to a specific value of the rotational speed of the optical storage device.

In Step 914, the optical storage device reads the data newly written on the optical storage medium to generate the sliced signal EFMI.

In Step 916, the EFM length detector 110 of the EFM length measurement device 100 detects lengths P of pits and lengths L of lands, respectively, according to the sliced signal EFMI.

In Step 918, the MPU executing the firmware code performs the calculations according to the lengths L and P detected in Step 916 and data set types (L_(nT), P_(mT)) and (P_(nT), L_(mT)) to generate the calculation results respectively corresponding to the data set types (L_(nT), P_(mT)) and (P_(nT), L_(mT)), where n=3, 4, . . . , 11 and m=3, 4, . . . , 11. Each of the data set types (L_(nT), P_(mT)), e.g. a data set type (L_(n0*T), P_(m0*T)) having n=n0 and m=m0, is utilized for classifying data sets (L, P) corresponding to a land having a target land length of n0*T followed by an adjacent pit having a target pit length of m0*T. In this embodiment, the data sets (L, P) are also referred to as the length sets (L, P). Similarly, each of the data set types (P_(nT), L_(mT)), e.g. a data set type (P_(n0*T), L_(m0*T)) having n=n0 and m=m0, is utilized for classifying data sets (P, L) corresponding to a pit having a target pit length of n0*T followed by an adjacent land having a target land length of m0*T. In this embodiment, the data sets (P, L) are also referred to as the length sets (P, L). It is noted that each of the data set types (L_(nT), P_(mT)), e.g. the data set type (L_(n0*T), P_(m0*T)), corresponds to a combination (n0*T, m0*T) of a specific target land length n0*T and a specific target pit length m0*T, and each of the data set types (P_(nT), L_(mT)), e.g. the data set type (P_(n0*T), L_(m0*T)), corresponds to a combination (n0*T, m0*T) of a specific target pit length n0*T and a specific target land length m0*T. As a result, the number of data set types (L_(nT), P_(mT)) and (P_(nT), L_(mT)) can be derived as follows: 9*9*2=162

The MPU may classify the data sets (L, P) to be of the data set type (L_(n0*T), P_(m0*T)) if (n0−0.5)*T≦L≦(n0+0.5)*T and (m0−0.5)*T≦P≦(m0+0.5)*T.

Similarly, the MPU may classify the data sets (P, L) to be of the data set type (P_(n0*T), L_(m0*T)) if (n0−0.5)*T≦P≦(n0+0.5)*T and (m0−0.5)*T≦L≦(m0+0.5)*T.

After deriving the number of data sets (L, P) corresponding to each of the data set types (L_(nT), P_(mT)) and the number of data sets (P, L) corresponding to each of the data set types (P_(nT), L_(mT)), the MPU calculates average length sets (L _(nT), P _(mT)) corresponding to the data set types (L_(nT), P_(mT)) respectively, and calculates average length sets (P _(nT), L _(mT)) corresponding to the data set types (P_(nT), L_(mT)) respectively, where the average lengths L _(nT) and P _(mT) respectively represent the average values of the lengths L and P of the data set types (L_(nT), P_(mT)), and the average lengths P _(nT) and L _(mT) respectively represent the average values of the lengths P and L of the data set types (P_(nT), L_(mT)). For example, the average lengths L _(n0*T) and P _(m0*T) respectively represent the average values of the lengths L and P of the data set type (L_(n0*T), P_(m0*T)), and the average lengths P _(n0*T) and L _(m0*T) respectively represent the average values of the lengths P and L of the data set type (P_(n0*T), L_(m0*T)).

After calculating the average length sets (L _(nT), P _(mT)), the calculation results (ΔL _(nT), ΔP _(mT)) corresponding to the data set types (L_(nT), P_(mT)) can be derived respectively from the following equations: ΔL _(nT) =L _(nT) −nT Δ P _(mT) =P _(mT) −mT

Similarly, after calculating the average length sets (P _(nT), L _(mT)), the calculation results (ΔP _(nT), ΔL _(mT)) corresponding to the data set types (P_(nT), L_(mT)), respectively, can be derived from the following equations: Δ P _(nT) =P _(nT) −nT Δ L _(mT) =L _(mT) −mT

In Step 920, the MPU executing the firmware code determines if tuning the write strategy parameters is needed. If any of the length deviation values ΔL _(nT), ΔP _(mT), ΔP _(nT), or ΔL _(mT) of the calculation results (ΔL _(nT), ΔP _(mT)) and (ΔP _(nT), ΔL _(mT)) is greater than a specific threshold, the MPU executing the firmware code determines that tuning the write strategy parameters is needed, so Step 922 will be executed; otherwise, enter Step 910E. Please note, for the first time of executing Step 920, the MPU may determine to enter Step 922 directly without any consideration if the initial values of the write strategy parameters are sure to be imperfect. In addition, although the write strategy parameters described in Step 920 and 922 are plural for simplicity as shown in FIG. 2, this is not a limitation of the present invention. Both Step 920 and 922 can be described utilizing a singular form of “write strategy parameter” if tuning only a single write strategy parameter is needed. Repeated explanation of the singular or plural form for similar situations is therefore unnecessary in the following.

If determining to enter Step 922, the MPU executing the firmware code then tunes the write strategy parameters according to calculation results (ΔL _(nT), ΔP _(mT)) and (ΔP _(nT), ΔL _(mT)), respectively. According to this embodiment, the write strategy parameters include F_(i,k) and R_(j,k) for controlling beginning locations of the pits and the lands, respectively, where i=0, 1, . . . , 80 corresponding to all the data set types (L_(nT), P_(mT)), j=0, 1, . . . , 80 corresponding to all the data set types (P_(nT), L_(mT)), and k is a loop index corresponding to the number of times for write strategy tuning (i.e. tuning the write strategy parameters). In this embodiment, F_(i,0) and R_(j,0) represent the initial values of the write strategy parameters corresponding to the combination indexes i and j, respectively, and F_(i,1) and R_(j,1) represent latest values of the write strategy parameters corresponding to the combination indexes i and j at the first time that Step 922 is executed for the combination indexes i and j, respectively. Accordingly, F_(i,k) and R_(j,k) represent latest values of the write strategy parameters corresponding to the combination indexes i and j at the k^(th) time that Step 922 is executed for the combination indexes i and j, respectively.

Please note that the number of data set types (L_(nT), P_(mT)) and (P_(nT), L_(mT)) according to another embodiment implemented for the DVD±R disc mentioned above can be derived as follows: 10*10*2=200; since n=3, 4, . . . , 11, 14 and m=3, 4, . . . , 11, 14 for the DVD±R disc. In addition, as long as the implementation of the present invention is not hindered, not all the average length sets mentioned above should be calculated according to another embodiment of the present invention. It is unnecessary to tune all the write strategy parameters simultaneously if the performance in some specific combination(s) out of all the combinations (nT, mT) respectively related to the data set types (L_(nT), P_(mT)) and (P_(nT), L_(mT)) is acceptable.

FIG. 3 illustrates a length compensation illustration of the method 910 shown in FIG. 2, wherein a pit having a target pit length of 4T followed by an adjacent land having a target land length of 4T is taken as an example. The values E_(f) and E_(r) shown in FIG. 3 respectively represent a fore location error and a rear location error of the pit, and it is obvious that the value E_(r) also represents a fore location error of the following land. As shown in FIG. 3, the compensation values dF_(i,k) and dR_(j,k) are utilized for tuning the write strategy parameters F_(i,k) and R_(j,k), respectively, where the compensation values dF_(i,k) and dR_(j,k) can be derived from the following equations: dF _(i,k) =G _(i,k,L) *ΔL _(nT) −G _(i,k,P) *ΔP _(mT) dR _(j,k) =H _(j,k,P) *ΔP _(nT) −H _(j,k,L) *ΔL _(mT) Through multiplying the calculation results ΔL _(nT), ΔP _(mT), ΔP _(nT), and ΔL _(mT) by the weighted factors G_(i,k,L), G_(i,k,P), H_(j,k,P), and H_(j,k,L), respectively, the MPU is capable of adjusting the calculation results ΔL _(nT), ΔP _(mT), ΔP _(nT), and ΔL _(mT) with the weighted factors G_(i,k,L), G_(i,k,P), H_(j,k,P), and H_(j,k,L) to generate the adjusted results (G_(i,k,L)*ΔL _(nT)), (G_(i,k,P)*ΔP _(mT)), (H_(j,k,P)*ΔP _(nT)), and (H_(j,k,L)*ΔL _(mT)), which are utilized for tuning the write strategy parameters F_(i,k) and R_(j,k) as shown in the equations mentioned above. Then the MPU may tune the write strategy parameters F_(i,k) and R_(j,k) according to the following equations: F _(i,k+1) =F _(i,k) +dF _(i,k) R _(j,k+1) =R _(j,k) +dR _(j,k)

Please note that in order to get better performance of the write strategy tuning for the materials currently applicable to the optical storage medium, the weighted factors G_(i,k,L), G_(i,k,P), H_(j,k,P), and H_(j,k,L) can be set to values less than 1 and can be set to have decreasing values while k increases. However, this is not a limitation of the present invention. In addition, in a special case of the first embodiment, either the weighted factors G_(i,k,L) and H_(j,k,P) can be set to zero values or the weighted factors G_(i,k,P) and H_(j,k,L) can be set to zero values in order to save the calculation loading of the write strategy tuning and save the storage volume requirement of memory resources such as the memory 120 and other memories of other embodiments utilized during the write strategy tuning.

In Step 924, the optical storage device then writes data on the optical storage medium utilizing the latest values of the write strategy parameters F_(i,k) and R_(j,k). After executing Step 924, Step 914 is executed. As a result, the working flow of the method 910 runs until the write strategy parameters are tuned to reach a predetermined precision set by Step 920 utilizing criteria such as the specific threshold mentioned above.

After retaining the teaching related to the method 910, those skilled in the art would understand that at least a portion of the steps shown in FIG. 2 can be executed by various kinds of devices implemented utilizing hardware, software, or combinations of hardware, software, etc. according to another embodiment of the present invention. For example, according to the case that the computer executing the application program performs the calculations mentioned above, Step 918, 920, and/or 922 can be executed by the computer executing the application program. According to this case, the lengths L and P can be sent to the computer executing the application program, so the computer executing the application program may classify the length sets (L, P) and (P, L), and calculate the average length deviations such as the calculation results (ΔL _(nT), ΔP _(mT)) and (ΔP _(nT), ΔL _(mT)) mentioned above. According to an implementation choice of the present invention, the computer executing the application program may determine if tuning the write strategy parameters is needed. According to various implementation choices, the computer executing the application program or the MPU executing the firmware code may calculate the latest values of the write strategy parameters F_(i,k) and R_(j,k) if tuning the write strategy parameters is needed. According to an implementation choice that the computer executing the application program calculates the latest values of the write strategy parameters F_(i,k) and R_(j,k), the computer executing the application program may send the latest values of the write strategy parameters F_(i,k) and R_(j,k) or the compensation values dF_(i,k) and dR_(j,k) back to the optical storage device. According to various implementation choices, the computer executing the application program or the MPU executing the firmware code may tune the write strategy parameters F_(i,k) and R_(j,k), so the MPU executing the firmware code may write data on the optical storage medium utilizing the latest values of the write strategy parameters F_(i,k) and R_(j,k). After executing Step 924, Steps 914-920 are executed to check if further write strategy tuning is required.

FIG. 4 illustrates a diagram of a system controller 1000 coupled to an average EFM length measurement device 200 according to a second embodiment of the present invention. In addition to the EFM length detector 110 shown in FIG. 1, the average EFM length measurement device 200 of the second embodiment further includes a calculation module 220 for executing a portion of Step 918 to generate the average length sets (L _(nT), P _(mT)) and (P _(nT), L _(mT)) as the calculation results of the average EFM length measurement device 200, and then the MPU executing another firmware code may complete the rest of the calculations disclosed by Step 918.

As shown in FIG. 4, the calculation module 220 includes a length classifier 222, a buffer 224, a pattern dependency classifier 226, and a calculator 220C, and the calculator 220C includes a memory 232 and an average unit 234. According to the second embodiment, the length classifier 222 is capable of identifying each of the pit lengths P with one of the target pit lengths, which may be the lengths of 3T, 4T, . . . or, 11T. Similarly, the length classifier 222 is also capable of identifying each of the land lengths L with one of the target land lengths, which are the lengths of 3T, 4T, . . . , 11T. According to this embodiment, the length classifier 222 encodes a length L or P together with the corresponding target length (i.e. what the length L or P is classified to be) to generate an encoded data 223 having information of the length (length L or P) and the corresponding target length. The buffer 224 buffers the encoded data 223 and outputs the buffered data 225. Here if the encoded data 223 corresponds to a current length, the buffered data 225 corresponds to a previous length. As a result, the buffer 224 buffers the previous length for further forming, in the pattern dependency classifier 226, a data set (L, P) or (P, L) including the previous length and the current length.

The pattern dependency classifier 226 then classifies the data sets (L, P) into the data set types (L_(nT), P_(mT)) by storing each of the data sets (L, P) into one of a plurality of regions respectively corresponding to the data set types (L_(nT), P_(mT)) in the memory 232. Similarly, the pattern dependency classifier 226 also classifies the data sets (P, L) into the data set types (P_(nT), L_(mT)) by storing each of the data sets (P, L) into one of a plurality of regions respectively corresponding to the data set types (P_(nT), L_(mT)) in the memory 232.

For a specific data set type out of the data set types (L_(nT), P_(mT)), the average unit 234 is capable of averaging the lengths L corresponding to lands to generate an average length L _(nT) corresponding to the specific data set type and is capable of averaging the lengths P corresponding to pits to generate an average length P _(mT) corresponding to the specific data set type. Similarly, for a specific data set type out of the data set types (P_(nT), L_(mT)), the average unit 234 is capable of averaging the lengths P corresponding to pits to generate an average length P _(nT) corresponding to the specific data set type and is capable of averaging the lengths L corresponding to lands to generate an average length L _(mT) corresponding to the specific data set type.

According to this embodiment, the average unit 234 is implemented utilizing a moving average unit. In addition, for each of the data set types (L_(nT), P_(mT)), e.g. the data set type (L_(nT), P_(mT)) having n=n0 and m=m0, the average unit 234 averages the lengths L corresponding to lands and averages the lengths P corresponding to pits to generate an average length set (L _(n0*T), P _(m0*T)) corresponding to the data set type (L_(n0*T), P_(m0*T)). As a result, the calculator 220C may utilize the data sets (L, P) corresponding to the data set type (L_(n0*T), P_(m0*T)) to generate the calculation result (L _(n0*T), P _(m0*T)) for the data set type (L_(n0*T), P_(m0*T)). In general, the calculator 220C generates the calculation results (L _(nT), P _(mT)) for the data set types (L_(nT), P_(mT)), respectively.

Similarly, for each of the data set types (P_(nT), L_(mT)), e.g. the data set type (P_(nT), L_(mT)) having n=n0 and m=m0, the average unit 234 averages the lengths L corresponding to lands and averages the lengths P corresponding to pits to generate an average length set (P _(n0*T), L _(m0*T)) corresponding to the data set type (P_(n0*T), L_(m0*T)). As a result, the calculator 220C may utilize the data sets (P, L) corresponding to the data set type (P_(n0*T), L_(m0*T)) to generate the calculation result (P _(n0*T), L _(m0*T)) for the data set type (P_(n0*T), L_(m0*T)). In general, the calculator 220C generates the calculation results (P _(nT), L _(mT)) for the data set types (P_(nT), L_(mT)), respectively.

Similar to the first embodiment, in a special case of the second embodiment, either the weighted factors G_(i,k,L) and H_(j,k,P) can be set to zero values or the weighted factors G_(i,k,P) and H_(j,k,L) can be set to zero values in order to save the calculation loading of the write strategy tuning and save the storage volume requirement of the memory resources such as the memory 232 utilized during the write strategy tuning. In this special case, the calculator 220C may generate either the average lengths L _(nT) or the average lengths P _(mT) as the calculation results (i.e. outputs of the calculation module 220) for the data set types (L_(nT), P_(mT)), respectively. Similarly, the calculator 220C may generate either the average lengths P _(nT) or the average lengths L _(mT) as the calculation results for the data set types (P_(nT), L_(mT)), respectively.

Please refer to FIG. 5 illustrating a diagram of a system controller 1000 coupled to an average EFM length deviation measurement device 300 according to a third embodiment of the present invention. In addition to the EFM length detector 110 shown in FIG. 1, the average EFM length deviation measurement device 300 of the third embodiment further includes a calculation module 320 utilized for executing a portion of Step 918 to generate average length deviation sets (ΔL _(nT), ΔP _(mT)) and (ΔP _(nT), ΔL _(mT)) as the calculation results of the average EFM length deviation measurement device 300.

In addition to the length classifier 222, the buffer 224, the pattern dependency classifier 226, and the calculator 220C shown in FIG. 4, the calculation module 320 shown in FIG. 5 further includes a length deviation calculator 326. According to the third embodiment, the pattern dependency classifier 226 further outputs the lengths L and P of the data sets (L, P) and (P, L) to the length deviation calculator 326. As mentioned above, the length classifier 222 encodes the length L or P together with the corresponding target length (i.e. what the length L or P is classified to be) to generate the encoded data 223 having the information of the length (length L or P) and the corresponding target length, so such information can be transmitted between two elements of the calculation module such as the calculation module 220 of the second embodiment and the calculation module 320 of the third embodiment.

As a result, when receiving the lengths L and P of the data sets (L, P) transmitted utilizing the encoded data 229, the length deviation calculator 326 may simply replace the lengths L and P of the data sets (L, P) corresponding to the data set types (L_(nT), P_(mT)) with corresponding length deviation values ΔL_(nT) and ΔP_(mT), respectively, wherein the length deviation calculator 326 calculates the length deviation values ΔL_(nT) and ΔP_(mT) according to the following equations: ΔL _(nT) =L−nT ΔP _(mT) =P−mT

Similarly, when receiving the lengths P and L of the data sets (P, L) transmitted utilizing the encoded data 229, the length deviation calculator 326 may simply replace the lengths P and L of the data sets (P, L) corresponding to the data set types (P_(nT), L_(mT)) with corresponding length deviation values ΔP_(nT) and ΔL_(mT), respectively, wherein the length deviation calculator 326 calculates the length deviation values ΔP_(nT) and ΔL_(mT) according to the following equations: ΔP _(nT) =P−nT ΔL _(mT) =L−mT

As a result of the circuit coupling shown in FIG. 5, for each of the data set types (L_(nT), P_(mT)), the calculator 220C may simply calculate the average values ΔL _(nT) of length deviation values ΔL_(nT), respectively, rather than the average values L _(nT), and calculate the average values ΔP _(mT) of length deviation values ΔP_(mT), respectively, rather than the average values P _(mT). Similarly, for each of the data set types (P_(nT), L_(mT)), the calculator 220C may simply calculate the average values ΔP _(nT) of length deviation values ΔP_(nT), respectively, rather than the average values P _(nT), and calculate the average values ΔL _(mT) of length deviation values ΔL_(mT), respectively, rather than the average values L _(mT).

Similar to the first embodiment, in a special case of the third embodiment, either the weighted factors G_(i,k,L) and H_(j,k,P) can be set to zero values or the weighted factors G_(i,k,p) and H_(j,k,L) can be set to zero values in order to save the calculation loading of the write strategy tuning and save the storage volume requirement of the memory resources such as the memory 232 utilized during the write strategy tuning. In this special case, the calculator 220C may generate either the average values ΔL _(nT) or the average values ΔP _(mT) as the calculation results (i.e. the outputs of the calculation module 320) for the data set types (L_(nT), P_(mT)), respectively. Similarly, the calculator 220C may generate either the average values ΔP _(nT) or the average values ΔL _(mT) as the calculation results for the data set types (P_(nT), L_(mT)), respectively.

In a variation of the second embodiment, a length deviation calculator coupled to the average EFM length measurement device 200 is utilized for executing a portion of Step 918 to generate the average length deviation sets (ΔL _(nT), ΔP _(mT)) and (ΔP _(nT), ΔL _(mT)) through similar calculations as those disclosed above. The length deviation calculator of this variation generates the average length deviation sets (ΔL _(nT), ΔP _(mT)) and (ΔP _(nT), ΔL _(mT)) according to the calculation results (L _(nT), P _(mT)) and (P _(nT), L _(mT)) received from the average EFM length measurement device 200 and outputs the average length deviation sets (ΔL _(nT), ΔP _(mT)) and (ΔP _(nT), ΔL _(mT)), so as mentioned, the MPU executing the firmware code or the computer executing the application program may utilize the average length deviation sets (ΔL _(nT), ΔP _(mT)) and (ΔP _(nT), ΔL _(mT)) outputted from the length deviation calculator of this variation to continue some other step(s) such as Steps 920 and/or 922.

Please note that since an averaging result of the averaging operation is proportional to a summing result of the summing operation for the same group of data, the average unit 234 can be replaced with a summing unit according to another embodiment of the present invention. Therefore, the averaging operation of the average unit 234 is replaced with the summing operation of the summing unit. After retaining the teachings of the present invention, those skilled in the art should understand that variations of such calculations can be applied to other embodiments of the present invention.

In addition, although in the embodiments mentioned above, each of the data set types corresponds to a combination of a specific target pit length and a specific target land length or a combination of a specific target land length and a specific target pit length, it is not a limitation of the present invention. Please note that in other embodiments of the present invention, each or one of the data set types may correspond to a combination of at least a specific target pit length and specific target land lengths, or a combination of at least a specific target land length and specific target pit lengths, or a combination of specific target land lengths and specific target pit lengths. As a result, the write strategy parameters can be tuned further according to more adjacent pits or lands.

Please refer to FIG. 6. FIG. 6 is a diagram of a system 400 for tuning write strategy parameters of an optical storage device according to an embodiment of the present invention, where the system 400 comprises a run-length limited (RLL) meter 410, a RLL analysis module 420, and a write strategy (WSR) tuning module 430. Comparing with the embodiments mentioned above, the RLL meter 410 of this embodiment replaces the EFM length detector 110, the RLL analysis module 420 of this embodiment replaces the calculation module 220 or the calculation module 320, and the WSR tuning module 430 plays a role like a later stage of the calculation module 220 (or 320), where the WSR tuning module 430 tunes the write strategy parameters and generates a write signal Write_to_disc according to the write strategy parameters.

In general, the RLL meter can be coupled to a reproduced signal such as the RF signal RF_signal representing data read from the optical storage medium. In addition, the RLL meter 410 detects a plurality of lengths according to the RF signal RF_signal to generate a plurality of RLL values as the lengths mentioned above, and the RLL analysis module 420 performs calculations according to the lengths to generate a plurality of calculation results, which are also referred to as RLL analysis results in this embodiment, so the write strategy parameters are tuned by the WSR tuning module 430 according to the calculation results. In this embodiment, each of the RLL values is the distance between two zero-crossing positions of the RF signal RF_signal. Additionally, each RLL value is corresponding to a pit or a land on the optical storage medium. According to different embodiments of the present invention, the RLL analysis results can be pattern dependent or pattern independent.

Please refer to FIG. 7. FIG. 7 is a diagram of a system 500 for tuning write strategy parameters of an optical storage device according to an embodiment of the present invention, where the system 500 generates pattern dependent RLL analysis results such as (L _(nT), P _(mT)) and (P _(nT), L _(mT)). As shown in FIG. 7, the system 500 comprises the RLL meter 410 shown in FIG. 6 and the calculation module 220 shown in FIG. 4. In this embodiment, the RLL meter 410 receives a digital signal such as a digital RF signal Digital_RF_signal, which is a digital form of the RF signal RF_signal mentioned above. For example, an analog-to-digital converter (ADC) can be utilized for performing analog-to-digital conversion on the RF signal RF_signal to convert the RF signal RF_signal into the digital RF signal Digital_RF_signal. According to this embodiment, these pattern dependent RLL analysis results are utilized for tuning certain write strategy parameters, for example, an overdrive (OD) width of at least one write pulse corresponding to one of the data set types (i.e., (L_(nT), P_(mT)), and (P_(nT), L_(mT))), or certain edge delay parameters such as the write strategy parameters F_(i,k) and R_(j,k) mentioned above.

Please refer to FIG. 8. FIG. 8 is a diagram of a system 600 for tuning write strategy parameters of an optical storage device according to an embodiment of the present invention, where the system 600 generates pattern dependent RLL analysis results such as L _(nT) and P _(nT). As shown in FIG. 8, the system 600 comprises the RLL meter 410 mentioned above and a calculation module 620, which replaces the calculation module 220 in the embodiment shown in FIG. 7. In addition to the length classifier 222 and the buffer 224 mentioned above, the calculation module 620 further comprises a pattern dependency classifier 626 and a calculator 620C corresponding to the pattern dependency classifier 626, where the calculator 620C comprises a memory 632 and an average unit 634. In this embodiment, the RLL meter 410 also receives the digital RF signal Digital_RF_signal, which is the digital form of the RF signal RF_signal mentioned above. According to this embodiment, these pattern dependent RLL analysis results are utilized for tuning certain write strategy parameters, for example, a peak power level P_peak or a write power level P_write of the write pulse corresponding to one of the data types (i.e., L_(nT), P_(mT), P_(nT), and L_(mT)) mentioned above, or a power ratio R_p, where the power ratio R_p is equal to the ratio of the write power level P_write to the peak power level P_peak.

According to this embodiment, these pattern dependent RLL analysis results are utilized for tuning certain write strategy parameters, for example, an OD width of at least one write pulse corresponding to one of the data types (i.e., L_(nT), P_(mT), P_(nT), and L_(mT)), or certain edge delay parameters such as the write strategy parameters F_(i,k) and R_(j,k) mentioned above.

According to the embodiments shown in FIG. 6, FIG. 7, and FIG. 8, the zero-crossing positions can be determined by utilizing analytic methods or searching methods. In addition, some of the write strategy parameters are tuned by utilizing at least one analytic method, and some of the write strategy parameters are tuned by utilizing at least one searching method.

Please refer to FIG. 9. FIG. 9 illustrates a sequence of sampled values generated by the ADC mentioned above, and lengths may be determined by these sampled values and variables τr and τs according to an analytic method, where the sampled values S_(s−1), S_(s), S_(s+1), S_(s+2), . . . , S_(r−1), S_(r), S_(r+1), S_(r+2), etc. are sampled from the RF signal RF_signal and carried by the digital RF signal Digital_RF_signal. According to this embodiment, a length between two zero-crossing points, for example, a first zero-crossing point between the sampled values S_(s) and S_(s+1) and a second zero-crossing point between the sampled values S_(r) and S_(r+1), can be derived according to an approximation that the segment between two sampled values adjacent to a zero-crossing point is considered to be a linear segment. Thus, the variables τr and τs can be calculated according to the following equations:

${\tau_{r} = {\frac{{abs}\left( S_{r} \right)}{{abs}\left( {S_{r} - S_{r + 1}} \right)} = \frac{S_{r}}{S_{r} - S_{r + 1}}}};$ and ${{\tau_{s} = {\frac{{abs}\left( S_{s} \right)}{{abs}\left( {S_{s} - S_{s + 1}} \right)} = \frac{S_{s}}{S_{s} - S_{s + 1}}}};}\;$ where the function abs(x) represents the absolute value of x. As a result, the length (i.e., the RLL value) between the first and second zero-crossing points is equal to (−τs+(s−r)+τr).

Please refer to FIG. 10. FIG. 10 illustrates a sequence of sampled values generated by the ADC mentioned above, and the zero-crossing point is estimated using a searching method, where the sampled values S_(A) and S_(B) are sampled from the RF signal RF_signal and carried by the digital RF signal Digital_RF_signal. In addition, the sampled values S_(A) and S_(B) are adjacent sampled values enclosing a zero-crossing point S_(ZC). As shown in FIG. 10, each of the variables τc, τd, τe, τf, etc. represents the length between the sampled value S_(B) and a corresponding approximating point out of the approximating points S_(C), S_(D), S_(E), S_(F), etc., where the length is measured along the horizontal axis. For example, the variable τc represents the length between the sampled value S_(B) and the approximating point S_(C).

According to this embodiment, the RLL meter 410 derives the approximating point S_(C) by performing interpolation according to the sampled values S_(A) and S_(B). As the approximating point S_(C) has the same sign as the sampled value S_(B), the RLL meter 410 further derives the approximating point S_(D) by performing interpolation according to the sampled value S_(A) and the approximating point S_(C). As the approximating point S_(D) has the same sign as the sampled value S_(A), the RLL meter 410 further derives the approximating point S_(E) by performing interpolation according to the approximating points S_(C) and S_(D). According to the same method, the RLL meter 410 is capable of deriving the approximating point S_(F) and some other approximating points that are closer to the zero-crossing point S_(ZC) by iterations to approach the zero-crossing point S_(ZC) with a predetermined resolution. As a result, the RLL meter 410 substantially derives an approximate value of the length between the sampled value S_(B) and the zero-crossing point S_(ZC), where the approximate value can be utilized as the variable τr or the variable τs in the embodiment shown in FIG. 9.

According to this embodiment, the length between the sampled values S_(A) and S_(B) adjacent to the zero-crossing point S_(ZC) can be linear-segmented. Thus, the variables τc, τd, τe, τf, etc. can be derived as follows:

$\tau_{c} = \frac{\tau_{a}}{2}$ $\tau_{d} = \frac{\tau_{a} + \tau_{c}}{2}$ ${\tau_{e} = \frac{\tau_{d} + \tau_{c}}{2}}\;$ $\tau_{f} = \frac{\tau_{d} + \tau_{e}}{2}$ …  ; or $\tau_{c} = \frac{1}{2}$ $\tau_{d} = {\frac{1}{2} + \frac{1}{4}}$ $\tau_{e} = {\frac{1}{2} + \frac{1}{4} - \frac{1}{8}}$ $\tau_{f} = {\frac{1}{2} + \frac{1}{4} - \frac{1}{8} + \frac{1}{16}}$ …

According to a variation of this embodiment, the length between the sampled values S_(A) and S_(B) adjacent to the zero-crossing point S_(ZC) is not segmented linearly. In this variation, more than two sampled values, for example, four sampled values such as the sampled values S_(s−1), S_(s), S_(s+1), and S_(s+2) shown in FIG. 9, are utilized for deriving an approximate waveform of the RF signal RF_signal. Accordingly, the variables τc, τd, τe, τf, etc. can be derived by performing interpolation along the approximate waveform.

Please note that for high density recording, some transition in a data stream does not result in the transition in the RF signal RF_signal, so additional signal processing is required to enhance the reliability of the RLL meter 410 in this situation. Please refer to FIG. 11. FIG. 11 is a diagram of a limit equalizer (LMEQ) 408 according to an embodiment of the present invention, where the LMEQ 408 can be coupled between the ADC mentioned above and the RLL meter 410. The LMEQ 408 is utilized for equalizing the digital RF signal Digital_RF_signal to generate another digital signal LMEQ_Output corresponding to the digital RF signal Digital_RF_signal. The LMEQ comprises an interpolator, a hard limiter, and a filter. In an embodiment as shown in FIG. 11, the LMEQ 408 is composed of delay units 408D (which are labeled as “D” in FIG. 11), amplifiers 408K respectively having gain values K₁, K₂, . . . , K₈, adders (e.g., 408A), and a hard limiter 408H.

The digital RF signal Digital_RF_signal is inputted into the interpolator with coefficients [K₁, K₂, K₃, K₄]. In this embodiment, [−u/2, (1+u)/2, (1+u)/2, −u/2] can be utilized as the gains [K₁, K₂, K₃, K₄], where u=3/16. The output of the interpolator is referred to as the interpolated RF signal. The interpolated RF signal is inputted into the hard limiter 408H. The hard limiter 408H compares the interpolated RF signal with a threshold value. If the absolute value of the interpolated RF signal is less than the threshold value, the output of the hard limiter 408H is equal to the interpolated RF signal; otherwise, the output of the hard limiter 408H has the same sign as the interpolated RF signal, where the absolute value of the output of the hard limiter 408H is equal to the threshold value. The output of the hard limiter 408H is then equalized by the filter with coefficients [K₅, K₆, K₇, K₈]. In this embodiment, [−v, v, v, −v] can be utilized as the gains [K₅, K₆, K₇, K₈], where v=1. At last, by properly summing a delayed digital RF signal (the signal through the lower path shown in FIG. 11) and the hard-limited and equalized results (the signal through the upper path shown in FIG. 11), the digital signal LMEQ_Output is generated. The upper path causes a certain delay, so that some delay units are required in the lower path, and in this embodiment, the delay amount is equal to 3 sampling periods.

Please refer to FIG. 12. FIG. 12 illustrates some of the write strategy parameters of write pulses, where the write pulses complies with a castle write strategy in this embodiment. The peak power level P_peak mentioned above is substantially the height of a write pulse of minimum multiple of T (i.e., 3T in this embodiment) with respect to a base level. In addition, the write power level P_write mentioned above is substantially the height of a middle portion of a write pulse of other multiples of T (i.e., 4T or above in this embodiment) with respect to the base level. As shown in FIG. 12, L_od and T_od respectively represent the OD widths beside the middle portion, where the OD width L_od is the duration of the leading OD portion with the peak power level P_peak, and the OD width T_od is the duration of the trailing OD portion with the peak power level P_peak. Comparing with tuning the write strategy parameters F and R to control the front edge delay and the rear edge delay of a write pulse corresponding to a pit (e.g., the method performed as shown in FIG. 3), tuning at least one of some other write strategy parameters such as the OD widths L_od and T_od, and power levels comprising the peak power level P_peak and the write power level P_write can be implemented according to different embodiments of the present invention.

According to an embodiment for tuning at least one OD width, L_od_(n,m) represents the OD width L_od corresponding to the data type P_(mT) of the data set type (L_(nT), P_(mT)). Replacing the write strategy parameter F with the OD width L_od in the following equation: dF _(i,k) =G _(i,k,L) *ΔL _(nT) −G _(i,k,P) *ΔP _(mT); where the combination index i represents the combinations (n, m), a new equation for this embodiment is derived as follows: dL _(—) od _(n,m,k) =G _(n,m,k,L) *ΔL _(nT) −G _(n,m,k,P) *ΔP _(mT); where if the average land error ΔL _(nT) is greater than the average pit error ΔP _(mT) in the data set type (L_(nT), P_(mT)), the OD width L_od_(n,m) should be increased. In addition, if the average land error ΔL _(nT) is less than the average pit error ΔP _(mT) in the data set type (L_(nT), P_(mT)), the OD width L_od_(n,m) should be decreased. Accordingly, the MPU mentioned above or the WSR tuning module 430 may tune the OD width L_od_(n,m,k) according to the following equation: L _(—) od _(n,m,k+1) =L _(—) od _(n,m,k) +dL _(—) od _(n,m,k). Similarly, T_od_(n,m) represents the OD width T_od corresponding to the data type P_(nT) of the data set type (P_(nT), L_(mT)). Replacing the write strategy parameter R with the OD width T_od in the following equation: dR _(j,k) =H _(j,k,P) *ΔP _(nT) −H _(j,k,L) *ΔL _(mT); where the combination index j represents the combinations (n, m), another new equation for this embodiment is derived as follows: dT _(—) od _(n,m,k)=−(H _(n,m,k,P) *ΔP _(nT) −H _(n,m,k,L) *ΔL _(mT)); where if the average land error ΔL _(nT) is less than the average pit error ΔP _(mT) in the data set type (P_(nT), L_(mT)), the OD width T_od_(n,m) should be decreased. In addition, if the average land error ΔL _(nT) is greater than the average pit error ΔP _(mT) in the data set type (P_(nT), L_(mT)), the OD width T_od_(n,m) should be increased. Accordingly, the MPU or the WSR tuning module 430 may tune the OD width T_od_(n,m,k) according to the following equation: T _(—) od _(n,m,k+1) =T _(—) od _(n,m,k) +dT _(—) od _(n,m,k).

According to a variation of this embodiment, the freedom of tuning of the OD widths is limited to being related to the pit lengths only, i.e., the lengths of the adjacent lands are not considered, the OD width L_od corresponding to the data type P_(mT) can be tuned according to the following equations:

${{dL\_ od}_{m,k} = {\sum\limits_{n}^{\;}\;\left( {{G_{n,m,k,L}*\Delta{\underset{\_}{L}}_{nT}} - {G_{n,m,k,P}*\Delta{\underset{\_}{P}}_{mT}}} \right)}};$ and L_od_(m, k + 1) = L_od_(m, k) + dL_od_(m, k).  Similarly, the OD width T_od corresponding to the data type P_(nT) can be tuned according to the following equations:

${{dT\_ od}_{n,k} = {\sum\limits_{m}^{\;}\;{- \left( {{H_{n,m,k,P}*\Delta{\underset{\_}{P}}_{nT}} - {H_{n,m,k,L}*\Delta{\underset{\_}{L}}_{mT}}} \right)}}};$ and  T_od_(n, k + 1) = T_od_(n, k) + dT_od_(n, k).

According to a variation of this embodiment, the freedom of tuning of the OD widths is limited to being related to the pit lengths only, i.e., the lengths of the adjacent lands are not considered, the OD width L_od corresponding to the data type P_(mT) can be tuned according to the following equations: dL _(—) od _(m,k) =−G _(m,k,P) *ΔP _(mT); and L _(—) od _(m,k+1) =L _(—) od _(m,k) +dL _(—) od _(m,k).

In this variation, ΔP _(mT) is redefined as the average of pit length errors, where each pit length error is obtained by subtracting a target length from a pit length. Accordingly, ΔP _(mT) can be expressed according to the following equation:

${{\Delta\;{\underset{\_}{P}}_{mT}} = {{\underset{{{({m - 0.5})}T} < P < {{({m - 0.5})}T}}{Avg}\left( {P - {mT}} \right)}.}}\;$ Similarly, the OD width T_od corresponding to the data type P_(nT) can be tuned according to the following equations: dT _(—) od _(n,k) =−H _(h,k,P) *ΔP _(nT); and T _(—) od _(n,k+1) =T _(—) od _(n,k) +dT _(—) od _(n,k).

According to another variation of this embodiment, the freedom of tuning of the OD widths is limited to being related to the land lengths only, i.e., the lengths of the adjacent pits are not considered. Similar descriptions are not repeated in detail here.

Please refer to FIG. 12 again. According to another embodiment, the calculation results derived from the lengths are utilized for tuning the power ratio R_p, or at least one power level such as the peak power level P_peak or the write power level P_write, where the power ratio R_p is the ratio of write power over peak power as mentioned, and can be tuned according to the following equation: dR _(—) p=−(G _(z,p) *ΔP _(zT)); where zT is the minimum multiple of T (i.e., 3T in this embodiment). If the average length P _(zT) of the lengths corresponding to the data type P_(zT) is not long enough, for example, a difference between the average length P _(zT) and the minimum multiple zT is greater than a predetermined threshold, it is reasonable to increase the peak power level P_peak in order to increase the average length P _(zT) after tuning the power ratio R_p by tuning the peak power level P_peak for the data type P_(zT). On the other hand, regarding one of the other multiples of T (i.e., 4T or above in this embodiment), the power ratio R_p is decreased while the peak power level P_peak is increased. In order to keep an average power value of the whole write pulse (including the OD portions and the middle portion) to be substantially constant or within a specific range, the write power level P_write should be decreased in this situation.

Similarly, if the average length P _(zT) of the lengths corresponding to the data type P_(zT) is too long enough, for example, a difference between the average length P _(zT) and the minimum multiple zT is less than a predetermined threshold, it is reasonable to decrease the peak power level P_peak in order to decrease the average length P _(zT) after tuning the power ratio R_p by tuning the peak power level P_peak for the data type P_(zT). On the other hand, regarding one of the other multiples of a period of a data clock T (i.e., 4T or above in this embodiment), the power ratio R_p is increased while the peak power level P_peak is decreased. In order to keep an average power value of the whole write pulse (including the OD portions and the middle portion) to be substantially constant or within a specific range, the write power level P_write should be increased in this situation.

In general, tuning the power ratio R_p can be achieved by tuning the peak power level P_peak and/or the write power level P_write according to the following equations: P_peak_(k+1) =P_peak_(k) +G_peak*dR _(—) p _(k); and P_write_(k+1) =P_write_(k) +G_write*dR _(—) p _(k); where G_peak and G_write are gain factors for controlling the tuning speed of each iteration, and k is the loop index as mentioned. Typically, if dR_p is greater than 0, the peak power level P_peak is increased and the write power level P_write is decreased. In addition, if dR_p is less than 0, the peak power level P_peak is decreased and the write power level P_write is increased.

Please refer to FIG. 13. FIG. 13 is a diagram of a system 700 for tuning write strategy parameters of an optical storage device according to an embodiment of the present invention. In this embodiment, the system 700 comprises an alternating current (AC) coupling module 706, an RLL meter 710, a calculation module 720, and a power tuning module 730, where the calculation module 720 comprises a level generator 722, an addition/subtraction unit 724, and an amplifier 726. The AC coupling module 706 is utilized for AC-coupling the RLL meter 710 to the RF signal RF_signal. The operation principles of the RLL meter 710 are similar to those of the RLL meter 410 shown in FIG. 6. The level generator 722 is utilized for generating a level k_off, which represents an offset value for calculations perform by the calculation module 720. The addition/subtraction unit 724 performs addition/subtraction operations on the land lengths L, the pit lengths P, and the level k_off, and output the operation result(s) into the amplifier 726 for multiplying a gain factor Gp. As a result, the power tuning module 730 tunes the write strategy parameters such as at least one power level or the power ratio R_p, and generates the write signal Write_to_disc mentioned above according to the write strategy parameters.

According to this embodiment, if the overall average land length L is longer than the overall average pit length P, the overall power P_all should be increased to balance the overall average land length L and the overall average pit length P. The overall power P_all can be tuned according to the following equation:

${dP\_ all} = {\sum\limits_{n}^{\;}\;{G_{n}*{\left( {{\Delta{\underset{\_}{L}}_{nT}} - {\Delta\;{\underset{\_}{P}}_{nT}}} \right).}}}$ According to this equation, if the overall summation/average of the average land error ΔL _(nT) is greater than the overall summation/average of the average pit error ΔP _(nT), then the overall power P_all should be increased. In addition, if the overall summation/average of the average land error ΔL _(nT) is less than the overall summation/average of the average pit error ΔP _(nT), then the overall power P_all should be decreased.

In a variation of this embodiment, the overall power P_all can be tuned according to the following equation:

${{dP\_ all} = {\sum\limits_{n}^{\;}\;{G_{n}*{\left( {{\underset{\_}{L}}_{nT} - \;{\underset{\_}{P}}_{nT}} \right).}}}}\;$ According to this equation, if the overall summation/average of the average land length L _(nT) is greater than the overall summation/average of the average pit length P _(nT), the overall power P_all should be increase to increase the pit lengths. In addition, if the overall summation/average of the average land length L _(nT) is less than the overall summation/average of the average pit length P _(nT), the overall power P_all should be decrease to decrease the pit lengths.

Please refer to FIG. 14. FIG. 14 illustrates a direct current (DC) level λ_(dc) of the RF signal RF_signal. According to the situation shown in FIG. 14, the AC-coupled RF signal has a longer land length L_(n) in contrast to a pit length P_(n), and even has a longer average land length L _(n) in contrast to an average pit length P _(n). In this situation, the overall power P_all should be increased.

In some cases, the optimum overall power is corresponding to a non-zero offset such as an offset having the same level as the level k_off. The land lengths and the pit lengths are obtained by adding/subtracting the level k_off in calculations performed by the calculation module 720 to finding the optimum overall power. For example, by setting the target average power corresponding to the level k_off as follows:

${{dP\_ all} = {\sum\limits_{n}^{\;}\;{G_{n}*\left( {{\Delta{\underset{\_}{L}}_{n}} - {\Delta\;{\underset{\_}{P}}_{n}} - {k\_ off}} \right)}}};$ or ${{dP\_ all} = {\sum\limits_{n}^{\;}\;{G_{n}*{\left( {{\underset{\_}{L}}_{n} - \;{\underset{\_}{P}}_{n} - {k\_ off}} \right).}}}}\;$

It is noted that, in general, the write strategies utilized in different embodiments of the present invention may respectively correspond to various kinds of storage media comprising recordable discs and rewritable discs. More particularly, tuning write pulse shape(s) and/or at least one power level for a certain storage medium may be applied to different embodiments of the present invention. For example, with regard to determining a proper write strategy to be utilized for writing a rewritable disc, a write power level, an erase power level, and/or a bias power level can be tuned, that is, determining a proper value of the write power level, a proper value of the erase power level, and/or a proper value of the bias power level may be required.

In addition, multi-pulse write strategies or single pulse write strategies (e.g. castle write strategies) can be utilized in different embodiments of the present invention. For example, with regard to determining a proper write strategy to be utilized for writing a recordable disc, a write power level and/or a bias power level can be tuned if multi-pulse write strategies are considered as candidate write strategies, that is, determining a proper value of the write power level and/or a proper value of the bias power level may be required. In another example, with regard to determining a proper write strategy to be utilized for writing a recordable disc, an overdrive (OD) power level, a write power level, and/or a bias power level can be tuned if single pulse write strategies are considered as candidate write strategies, that is, determining a proper value of the OD power level, a proper value of the write power level, and/or a proper value of the bias power level may be required.

FIG. 15 illustrates the write strategy parameters that can be respectively tuned by utilizing the calculation results according to different embodiments of the present invention, where the write strategy parameters shown in FIG. 15 are applicable to writing recordable discs such as DVD-R discs, and the write strategy parameters of awrite strategy for multi-pulses and awrite strategy for a single pulse are respectively illustrated in FIG. 15 with respect to an ideal waveform of a sliced signal. The write strategy parameters Ttop1, Ttop2, Tlast1, Tlast2, Ttopr, Todf, Todr, and Tlast respectively correspond to certain edge delays (or edge shifts), and the write strategy parameter Tmp corresponds to a certain pulse width. In addition, the write strategy parameters such as the OD power, the write power, and the bias power shown in FIG. 15 respectively correspond to certain power levels.

FIG. 16 illustrates the write strategy parameters that can be respectively tuned by utilizing the calculation results according to different embodiments of the present invention, where the write strategy parameters shown in FIG. 16 are applicable to writing rewritable discs such as DVD-RW discs, and the write strategy parameters of a first write strategy (i.e. “Write strategy 1” shown in FIG. 16) and a second write strategy (i.e. “Write strategy 2” shown in FIG. 16) are listed with respect to an ideal waveform of a sliced signal. With regard to pulse periods of at least a portion of pulses respectively utilized in these embodiments, the first write strategy can be referred to as the 1T write strategy, and the second write strategy can be referred to as the 2T write strategy. The write strategy parameters Ttop1, Ttop2, Tlast1, Tlast2, and Tcool respectively correspond to certain edge delays (or edge shifts), and the write strategy parameter Tmp corresponds to a certain pulse width. In addition, the write strategy parameters such as the write power, the erase power, and the bias power shown in FIG. 16 respectively correspond to certain power levels.

In light of the embodiments disclosed above, those skilled in the art would appreciate that at least a portion of the flowchart shown in FIG. 2 can be further generalized as shown in FIG. 17. Please refer to FIG. 17 illustrating a flowchart of a method for tuning at least one write strategy parameter of an optical storage device according to one embodiment of the present invention. The method can be described as follows.

In Step 1710, write at least one segment of data on an optical storage medium accessed by the optical storage device according to a plurality of write strategies.

In Step 1720, read at least one segment of data (e.g. at least a portion of the data previously written on the optical storage medium in Step 1710) back.

In Step 1730, detect a plurality of lengths of the data read back from the optical storage medium, each length corresponding to a pit or a land on the optical storage medium.

In Step 1740, perform calculations according to the lengths to generate a plurality of calculation results, and utilize the calculation results to determine a proper write strategy.

In general, the write strategy determined in Step 1740 may include any parameter that can be used to adjust the shape of write pulses or the power level for data recording. According to one implementation choice of this embodiment, the write strategy represents at least one write strategy parameter comprising a power level of a write pulse, such as an OD power, write power, bias power, or peak power. The write strategy determined in Step 1740 can be a castle write strategy or a multi-pulse write strategy.

FIG. 18 illustrates a plurality of data segments, where each data segment is being test-write according to one of the plurality of write strategies. The data segments DATA_(WS1), DATA_(WS2), DATA_(WS3), . . . , and DATA_(WSn) respectively correspond to the plurality of write strategies WS1, WS2, . . . , and WSn according to a variation of the embodiment shown in FIG. 17. The signal quality of the read-back data corresponds to various write strategies WS1, WS2, . . . , and WSn can be calculated, for example, the signal quality related to write strategies WS1, WS2, . . . , and WS6 as shown in FIG. 19.

According to this variation, the signal quality corresponding to the write strategies WS1, WS2, . . . , and WS6 can be calculated by analyzing the corresponding lengths detected in Step 1730. In order to determine a proper write strategy, data processing regarding the signal quality corresponding to the write strategies WS1, WS2, . . . , and WS6 can be performed, so a processing result such as the filter line shown in FIG. 19 can be derived, where curve-fitting, a gravity method, and/or a filter may be applied to the data processing mentioned above. For example, the optimum signal quality is the turning point of the filter line of FIG. 19, and the proper write strategy may be derived by interpolating.

According to some embodiments of the present invention, the system controller 1000 mentioned above and some other component(s) (e.g. one of the calculation modules 220, 320, and 620) can be integrated into the same module. FIG. 20 illustrates a system for implementing the method shown in FIG. 17 according to one embodiment of the present invention, where the system controller 1000-1 shown in FIG. 20 is implemented by integrating the system controller 1000 mentioned above and some other component(s) (e.g. one of the calculation modules) into the same module. Here, the write strategy module 2050 shown in FIG. 20 may comprise a write pulse controller (not shown) for controlling the write pulse shape(s), and may further comprise a write power controller (not shown) for controlling at least one power level. The system controller 1000-1 may execute Step 1710 by utilizing the write strategy module 2050, and may further control some of the other operations. Regarding Step 1730, the system shown in FIG. 20 utilizes the EFM length detector 110 to detect the lengths. For brevity, some components are not illustrated in FIG. 20. Similar descriptions are not repeated in detail.

As shown in FIG. 21, in a variation of the embodiment shown in FIG. 20, the RLL meter 410 is utilized for replacing the EFM length detector 110 in the system shown in FIG. 20, in order to measure according to a digital signal such as the digital RF signal Digital_RF_signal mentioned above. For brevity, some components are not illustrated in FIG. 21. Similar descriptions are not repeated in detail.

It should be noted that the present invention can be implemented by means of hardware including a plurality of distinct elements, or by means of a suitably programmed computer. In the system claim enumerating a plurality of means, several of these means can be embodied by one and the same item of hardware.

Those skilled in the art will readily observe that numerous modifications and alterations of the device and method may be made while retaining the teachings of the invention. Accordingly, the above disclosure should be construed as limited only by the metes and bounds of the appended claims. 

1. A method for tuning a write strategy parameter of an optical storage device, the method comprising: writing a segment of data on an optical storage medium according to a plurality of write strategies; reading the data back and detecting a plurality of lengths of the data read back, each length corresponding to a pit or a land on the optical storage medium; performing calculations according to the lengths and a plurality of data types to generate a plurality of calculation results respectively corresponding to the plurality of write strategies, each of the data types corresponding to at least a specific target pit length or at least a specific target land length; and utilizing the calculation results to determine a proper write strategy.
 2. The method of claim 1, wherein the write strategy represents at least one write strategy parameter comprising a power level of a write pulse.
 3. The method of claim 1, wherein the write strategy is a castle write strategy.
 4. The method of claim 1, wherein the write strategy is a multi-pulse write strategy.
 5. The method of claim 1, wherein the step of utilizing the calculation results to determine the proper write strategy further comprises: determining the proper write strategy by processing the calculation results corresponding to the plurality of write strategies using curve fitting.
 6. A system for tuning a write strategy parameter of an optical storage device, the system comprising: a detector for detecting a plurality of lengths, each length corresponding to a pit or a land on an optical storage medium; and a controller, coupled to the detector, for controlling the optical storage device to write a segment of data on the optical storage medium according to a plurality of write strategies, performing calculations according to the lengths and a plurality of data types to generate a plurality of calculation results respectively corresponding to the plurality of write strategies, and utilizing the calculation results to determine a proper write strategy, wherein each of the data types corresponds to at least a specific target pit length or at least a specific target land length.
 7. The system of claim 6, wherein the write strategy represents at least one write strategy parameter comprising at least a power level of a write pulse.
 8. The system of claim 6, wherein the write strategy is a castle write strategy.
 9. The system of claim 6, wherein the write strategy is a multi-pulse write strategy.
 10. The system of claim 6, wherein the controller determines the proper write strategy by processing the calculation results corresponding to the plurality of write strategies using curve fitting.
 11. A system for tuning a plurality of write strategy parameters of an optical storage device, the system comprising: a run-length limited (RLL) meter for detecting a plurality of lengths, each length corresponding to a pit or a land on an optical storage medium; and a controller, coupled to the RLL meter, for controlling the optical storage device to write at least one segment of data on the optical storage medium according to a plurality of write strategies, performing calculations according to the lengths to generate a plurality of calculation results respectively corresponding to the plurality of write strategies, and utilizing the calculation results to determine a proper write strategy.
 12. The system of claim 11, wherein the optical storage device generates an analog reproduced signal by accessing the optical storage medium, and the system further comprises: an analog-to-digital converter (ADC) for converting the analog reproduced signal into a first digital signal; wherein the RLL meter detects the lengths according to the first digital signal or a second digital signal corresponding to the first digital signal.
 13. The system of claim 12, further comprises: a limit equalizer (LMEQ) coupled between the ADC and the RLL meter for equalizing the first digital signal to generate the second digital signal; wherein the RLL meter detects the lengths according to the second digital signal.
 14. The system of claim 12, wherein the RLL meter detects a plurality of zero-crossing positions of the first digital signal or the second digital signal, and the RLL meter derives the lengths according to the zero-crossing positions.
 15. The system of claim 14, wherein the plurality of zero-crossing positions are detected by utilizing an analytic method or a searching method.
 16. The system of claim 11, wherein the controller performs calculations according to the lengths and a plurality of data types to generate a plurality of calculation results respectively corresponding to the data types, each of the data types corresponding to at least a specific target pit length or at least a specific target land length.
 17. The system of claim 11, wherein the controller performs calculations according to the lengths and a plurality of data set types to generate a plurality of calculation results respectively corresponding to the data set types, each of the data set types corresponding to a combination of at least a specific target pit length and a specific target land length or a combination of at least a specific target land length and a specific target pit length, the combination corresponding to a specific write strategy parameter.
 18. The system of claim 11, wherein the system is the optical storage device.
 19. The system of claim 11, wherein the system is a circuit positioned in the optical storage device, or the system is a circuit coupled to the optical storage device. 